perm filename MAXTEX.MMD[UP,DOC]6 blob sn#581176 filedate 1981-04-21 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00011 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	*****This documentation is somewhat old.  Try printing txtdoc.pre[tex,mmd].
C00008 00003			Instructions to use the Macros Templates Examples
C00012 00004	KERMAC: The basic set of macros
C00032 00005	KERMAC-- \espanol: Macros para espanol,  \francais: Macros pour francais.
C00036 00006	KERMAC-- Nofill mode: Macros for non-justified text (programs, graphics, etc)
C00041 00007	LETMAC: Macros for letters
C00046 00008	MATMAC: Macros for Mathematics
C00050 00009	PAPMAC: Macros for papers, reports, thesis, etc.
C00063 00010	Other sets: TEXMAC, TMRMAC
C00066 00011	    As another instance, suppose you want a heading consisting of one line
C00069 ENDMK
C⊗;
*****This documentation is somewhat old.  Try printing txtdoc.pre[tex,mmd].
***** Will write on-line doc soon...


				TEX Macros

    The macros  are partitioned  in several  files (sets),  for  different
applications.  This has the prurpose  of avoiding the input of  unnecesary
junk (at the cost of messing up your terminal's screen when running TEX).

    Individual files  have  brief comments  before  each macro  (see  NEWS
page).  This file  has somewhat  more technical  description of  contents,
applications, restrictions, and functioning of each set (and subset).   In
some cases, hints are given for  rewritting or improving some of the  more
complicated macros (page  styles, for instance).  Few TEX standard  macros
have been re-  defined, so what  the TEX manual  describes will also  work
with our macros.  Exceptions are:

	\hsize, \vsize should not be used; there are macros \sethsize{<dimen>},
                and \setvsize for that effect. Former two will not work.
	\lg, \Pr deleted
	& is alignment tab and ← is subscript escape in non-SAIL machines
	Char "" (VT='13) is considered a space (\chcode=10)
	Char "|" should be used carefully in Table of Contents, Plates and
		in the Index.

    Some of the macros were borrowed  from (or inspired on) the  following
sources:

			basic.tex[1,3]
			macros.tex[tex,ark]
			errata.txt[tex,dek]
			macros.tex[tex,jp]

or from the TEX manual (TEX & METAFONT, 1979).

    Comments, suggestions and additions  are welcome (mmd  % sail) or  Max
Diaz @384D (Math. Dept.).  Bug reports are not welcome, but will be  given
due attention. Send message to MMD for mail list.


			Organization of this File

    For each set, there is a general  description of its usage and of  the
restrictions for  its use  (for  instance, you  should not  \input  PAPMAC
before KERMAC).  You will probably want to start by reading the section on
KERMAC, the kernel, together with a listing of it.

    At the end we give several indexes of variables and control sequences.
You should not redefine  any of these in  your manuscript without  reading
the instructions provided; there is no internal checking of errors, so you
may get weird TEX error messages.

    The combination \input kermac \input matmac gives the same results  as
(and contains) basic.tex (which you should NOT input).


			       Running TEX

    The TEX version to  use is MAXTEX[1,3], which  is a preloaded   version
(has information on the fonts used) and hence runs faster than TEX.  MAXTEX
is, of course, pronounced "majtex".

%∞pagebrk
		Instructions to use the Macros; Templates; Examples

.r maxtex
*\input kermac

	{Then input (or borrow from) one or more secondary sets of macros:
  
		PAPMAC	 for papers, reports (headings, chapters, etc)
		MATMAC   for math
		LETMAC	 for letters (inputs kermac automatically)
		TMRMAC	 for Times Roman fonts

	{Read last page of files to check initializations made;  these may be
	  re-defined at this point. This files are all in are [tex,sys].

	{Your text.

*\end

    Here is  a template  for a  SPECIAL appplication  (see also  the  more
elaborate example  in  \tableofcontents below).   This  example is  for  a
report (or  paper) kind  of document,  where no  chapters are  used  (only
sections and subsections).  See also \secsubsecstyle.

%%% macros:
\input kermac
\input papmac

	% Set parameters to taste (may also be omitted):
\let \tit=\dunhill
\parskip .1in			% space between paragraphs
\parindent 0pt			% no indentation on crown lines

	% Initializations
\ctrnumheading			% desired page style
\date{February 14}		% This defines var \todate
\fixedheadings{Project ``PEAS''}{\todate}

%%% the first page:
\titlepage
\ctrcol{\ninepoint\cr\halskip{.75in}
	{\Tit\projname
	     \footnote*{Research supported by ``Save the Ants''}}\cr\halskip{1.5in}
	by\cr
	R. Schockley and H. Kcizinger}
\vfill
\ctrcol{\ninepoint
	Parapsychology Department\cr\halskip{5pt}
	Occult Sciences University\cr\halskip{3pt}
	\todate}
\eject

%%% text begins:
\arabicnumbering{1}
\topspace .5in
\sectionbegin{An Erratic Visitor's Impression of an Ant Colony}
%∞pagebrk
KERMAC: The basic set of macros



			      *Description*

    This  is  the  kernel.   Contains  the  font  declarations  &  \chcode
assignations.  Except for a  few cases (noted), all  other sets depend  on
this one; at least for the section HACKS. The subsets are:

1. CODES, FONTS, etc.

    It is becoming a rather standard practice to use "&" for alignment tab
and "_" (underline) for subscript  escape on non-SAIL machines.

    These are  taken  from  the  manual,  appendix  E.

2. ESPANOL, ENGLISH

    See next page, please.

3. GLUE, BOXES, etc.

    Mostly taken from basic.tex, except for \ljustline and \xxskip.   Note
\qquad could be defined as \hskip 2em in horizontal mode (see errata.txt).

    Macro \displaypar has as argument the paragraph to be displayed.   You
may use \hangindent inside  it: \displaypar{\hangindent 20pt  <paragraph>}
(see also below).   Glue after \displaypar  is \displayparskip, which  has
default value  equal  to  \parskip.   Note  \displaypar  uses  \hbox  par,
described in errata.txt.

    Paragraph indentation  macros are  used as  \noindent: preceeding  the
paragraph in  question.  Paragraphs  are  not indented,  but this  may  be
changed  by  redefining  \indentcrownskip   to  be  the  desired   <dimen>
indentation.

    The other macros,  \enumerate, \enumelett and  \itemize are also  used
preceeding the paragraph in question.  For the first two, the parameter is
the number (letter)  at which to  start; this will  be roman (lower  case)
numeral if you  say \enumerate{-2}.  Note  that, to change  the format  of
hanged  numbers,  you  need  only  redefine  \enumrnfmt,  \enumrlfmt   and
\itemzfmt respectively.   For  instance,  if parenthesis  are  desired  in
\enumerate, do

\def\enumrnfmt{({\bf\count7})\ }

Macros will take care of the rest.

    Finally, note you get nice effects by combining the above; e.g.

\displaypar{\enumelett{A} This paragraph will be displayed and identified
            by a hanged ``A.''}
\displaypar{\enumrind For the next paragraph you type \enumrind, as usual.}

and similarly for \itemize.

    For fairy tales and bibles, you may want to use  \capitalpar3{O}{\caps
nce upon a time \rm there was...}. Try it, you'll like it.


4. UNDERLINING, etc.

    All rather obvious.

5. HACKS

    For hackers to unhack.  Several of these macros are used in other sets
without comment.

6. PAGE NUMBERING, TITLEPAGES, PAGE FORMAT

    In the fashion  this set gets  initialized, you'll see  a page  format
similar to that in basic.tex.  There are, however, some parameters you may
combine to obtain a different effect.

    First, pages have  either \romannumbering  or \arabicnumbering;  these
appear at the bottom of pages in italic 10pt font.  Next, pages are  meant
to be used on \oneside or on \bothsides (for printing).
    Page dimensions are set by \sethsize, \setvsize (see initializations).
[ In the dover, horizontal dimensions appear inflated by a factor of 1.02;
that is, 2%]

    To set margins, use \setmargin{x}{y}{z}{w},  where all these are  true
dimensions.  (1) When \oneside, left margin will be = x on every page (and
y is  ignored).  (2)  When \bothsides,  left margin  will be  = x  on  ODD
numbered pages, and = y on  EVEN pages.  Given x,h (i.e., \sethsize{h}  or
\columnsperpage{n}{c}{g}{h}), to get the left  margin in even pages  equal
to the right margin  on odd pages,  let y =  <sheet width> -  h - x.   Top
margins will be z on \titlepages and w on \normalpages.
[In the dover, top margin cannot be less than .3125, or wraparound will 
occur]

    You may have multi-column format  by use of \columnsperpage. This  may
save you some headaches  in simple alignments...and  give you some  others
with the  hyphenation routines.   Note  \sethsize uses  this to  define  a
one-column page.  Some possible values are:

      \columnsperpage{2}{3truein}{.25truein}{6.25truein}
      \columnsperpage{3}{2truein}{.125truein}{6.25truein}
      \columnsperpage{4}{1.5truein}{.08333truein}{6.25truein}
      \columnsperpage{7}{.85714truein}{.04166truein}{6.25truein}
      \columnsperpage{9}{.66666truein}{.03125truein}{6.25truein}

etc.  As mentioned  at the beginning  of this  file, \hsize is  not to  be
used; use \sethsize or \columnsperpage.  You  cannot switch from 25 to  37
columns in the middle of a  page.  Also note \endpage means "end  column",
so to end all columns in current sheet, type \endsheet.

    Macro \fullpages  resets  numbering,  and  allows  use  of  the  whole
declared \setvsize{9truein} page.

    The \magnify option  will expand  everything photographically,  EXCEPT
the page dimensions.  Currently, only  the magnification value 1100  (10%)
works moderately well,  due to lack  of fonts in  the DOVER printer.   The
success of \magnify  depends on the  variety of fonts  ypur document  uses
(e.g., with \fullpages\tenpoint\rm you have 1100, 1300, 1500, 1700,  2000,
3000; but if you use \caps somewhere, forget it).


7. INITIALIZATIONS

    Any of  these may  be modified  anytime after  the set  is input;  for
instance, \input kermac \bothsides.



			      *Restrictions*

    This file is meant to be input before any of the others.



				 *Notes*

    More details about the \output routine (& satellites) are given in the
section "Page design". The  routine needed for the  basic output could  be
much simpler;  this  somewhat messy  arrangement  nevertheless  simplifies
later routines (see also PAPMAC).

    There are several important "global  variables" in this set.   \ddvnum
(T or  F) is  set  by \bothsides,  and is  used  in the  output  routines.
Variable \tpage is set by \normalpage and reset by \titlepage; see  PAPMAC
(useless in this set).

%∞pagebrk
KERMAC-- \espanol: Macros para espanol,  \francais: Macros pour francais.



			      *Description*

    Allows accents with a single character("), which works for any  letter
and font (e.g. as"i and not  as\'\i).  The e\~ne (egne) is written  simply
~: for  instance espa~nol.  Both things  are possible  by use  of the  new
chcode←13. (It is not recomended to use  ' for accents in this way,  since
this character  is  used for  octal  codes  ('43) and  right  quotes  '').
EXCEPTION:  words accented in the last  letter must have \<sp> at the  end
(if you don't want it  to be eaten by TEX):   as"i\ ya se jodi"o\ la  cosa
(REWARD offered to (s)he who points out a way to put accents with a single
character, without exception).

    This set also translates words used by all the other sets of macros.

    Hyphenation penalty is increased to 100.  Hyphenation works often  for
spanish words.

				 *Notes*

    See commands \espanol, \english in KERMAC.

********************************************************************************

\francais: Macros pour fran{\ced}ais



			      *Description*

    Allows accents with  a single  character(",`,~), which  works for  any
letter and font (e.g. ha\+ir and not ha\+\i r, bat~iment, etc.).   Compare
\espanol.  Here, "=aigu, `=grave, ~=circumflex, \+=trema, \ccd={c  cedille},
\CCD={C cedille}. The \<quotes\>\  are typeset this way.

	Accent aigu: t"el"evision, mang"e\ , "elevation.
	Accent grave: premi`ere, tr`es:
	Accent circumflex: m~eme, d~u\ , etc.
	Trema: No\+el, Ha\+ir:
	Cedille: Gar{\ccd}on, ou GAR{\CCD}ON:
	<A quote>.  To get chars <,>, use \char'74, \char'76 (resp.)

	Use:	{\char'134 } for standard quotes
		{\char'42 } resp.

    EXCEPTION:  words accented in the last  letter must have \<sp> at  the
end (if you don't want it to  be eaten by TEX): J'ai pas trouv"e\  comment
eviter {\ccd}a;  (REWARD offered  to (s)he  who points  out a  way to  put
accents with a single character, without exception).

    This set also translates words used by all the other sets of macros.

    Hyphenation penalty is increased to 100, but check how TEX hyphenates;
it may break words incorrectly.
%∞pagebrk
KERMAC-- Nofill mode: Macros for non-justified text (programs, graphics, etc)

[Inasmuch as grfx35 is not in the DOVER, do not expect \grfx to work there...
 I'm seeking an alternative solution...]


			      *Description*

    This macros  take several  lines  of text,  and outputs  them  without
justification.  This is useful for typesetting programs or graphics (using
one of the fonts grfx).  The basic macro is \nojust; it is used as follows:

{\nojust

            Hello       many spaces       $x↑2$

   line  2                     |   a  box   |
               line 3          |------------|

\par}   % this \par is essential!

which will then  output those lines  verbatim in the  current font.   Note
result is a paragraph.  (as such,  you may want \nojust\noindent to  avoid
crown-indent).    That   is,   \nojust   simply   respects   spaces    and
carriage-returns. Note first line counts  (to ignore it: \nojust%).   Even
better, type \par} at the end of the last line of your \nojust.

    For figures and such things, you'll need a fixed-width font;  probably
either \ttwr  or  \grafix.  These  two  appear in  the  control  sequences
\typewrite and  \grfxnof,  which  take  those lines  and  also  produce  a
paragraph.  In  that case,  since \parindent  is probably  undesired,  you
should type:

{\typnoi

	<non-justified lines>

\par}

or, for graphics, \grfx (which includes \noindent). A \par before the } is
needed, as shown. Null lines generate a blank line.

    You may also use  box such paragraph  and then indent  it or place  it
somewhere; e. g., to make a box 4 inches wide & save it (optional \save0):

{\grfx\save0\gbox{4in}{
				⊂αααααααααααα⊃
   line  2			~   a  box   ~
               line 3		%αααααααααααα$

}}

    Or  to   center:   \ctrline{\grfx\gbox{5in}{......}}.   Warning:   the
dimension (here 4in or whatever) has to be specified; there is no "natural
size" setting. (To be added in the future)


    As for the characters inside \nofill (do not confound with  \nojust!),
you may type anything except  \, {, } (which are  defined as \\, \{,  \}),
which will be interpreted as TEX control sequences.  ALL other  characters
are disabled during  \nofill and  will therefore be  typeset, except  that
TAB's will report you a funny error message.



			      *Restrictions*

    You may use this set anytime after \input of KERMAC.  Most macros here
are easily transportable, however.



				 *Notes*

    The setting \baselineskip -1pt is to force the interline glue (manual,
p. 58) to be \lineskip = 0.

    The \nofill macro becomes really simple by means of the new \chcode=13
(see errata.txt).  Note we chose to use a local {\nofill <lines>}  instead
of  delimiting   with   two  control   sequences   (\beginnofill   <lines>
\endnofill); this  lets TEX  do  the job  of reconstructing  whatever  was
messed up within nofill mode.

%∞pagebrk
LETMAC: Macros for letters

    The usage of this set is rather simple; all you need to do is create a
file looking like this:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\input letmac

	% Define addresses:
\def\saddr{Mathematics Department\cr Stanford, California 94305}
	% Optional addendum to \stanford letterhead; example:
	%   \def\whoswho{\caps Donald E. Knuth\cr\rm Fletcher Jones Professor\cr
	%		 Phone (415)497-4367}
	% or simply \def\whoswho{\skip Ph.(123)456-7890}
\def\whoswho{}
\def\paddr{1211 Ramona Street\cr
	Palo Alto California, 94301\cr
	U. S. A.}

	% A further letterhead is done in this way:
\def\iimas{\gdef\jaddr{UNAM\cr Apartado 20-726\cr M\'exico 20, D.F.\cr MEXICO}
	   \let\jname=\sname
	   \gdef\whoswho{Tel. 548-33-60} % (note usage)
	   \gdef\jlogo{{\bigggfnt IIMAS}\hskip 10pt}
	   \job}

	% For return-address label:
\def\sname{Maximiliano D\'\i az}
\def\pname{{\sanss Max }}

	% Initializations to taste
\parindent 20pt
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    Then, a typical letter should look like this:

	\input lett                    % Input previous file
				       % Choose language (see \espanol,\francais)
	\date{December 1\th{st}}       % Letter date


	\stanford                      % Choose style of letter; see also \personal
	\to{Prof. D. Knuth\cr	       % Destinatary
	    Computer Science Dept.\cr

	      the letter...

	\sign{\sname}
	\fin                           % C'est tout.

		(other letters may follow: repeat from \stanford to \fin)
	\bye


	    Stanford University}

The other macros should be self-explanatory.


    Note file described above define  the addresses and other  information
used in the letterheads.   You may also use  the optional \whoswho, to  be
set in \stanford  style; it  is supposed  to be  like this  (in the  above
example it is null):

   \def\whoswho{\caps Donald E. Knuth\cr\rm Fletcher Jones Professor\cr
                Phone (415)497-4367}

or to put your telephone number: \def\whoswho{\skip Ph.(123)456-7890}. See
also the additional style \iimas (which is used as \stanford or \personal,
and defines new addresses, \whoswho and all).

    You may use LETMAC  in conjuction with any  of the other sets,  EXCEPT
for PAPMAC.

%∞pagebrk
MATMAC: Macros for Mathematics



			      *Description*

    Contains a set of primitives to typeset math:

1. OP, PARENTHESIS

    Taken from basic.tex.  Most of these are explained in the manual.

2.ALIGNMENT, CHOP

    All of these control sequences are illustrated in the TEX manual.

3.THEOREMs, EQNOs

    Theorem numbers are kept in \varstmt;  the number assigned to a  \stmt
is then \varstmt if \count8=0 (no chapter declared), and  \count8.\varstmt
otherwise (see \consnum). That is, if \count8 = 0, \stmt's are  1,2,3,...;
and if \count8  = n  ≠ 0,  numbers are  n.1, n.2,...  (n may  be in  roman
capitals if n < 0).

    The TEX manual has another definition \thbegin which may be useful  if
numbers are not desired.

    For equation numbers,  assuming \bothsides, \lreqno  numbers right  on
odd pages, and left on even pages.  It coincides with \eqno when \oneside.
Note new \leqno is used (see errata.txt).

PAPMAC: Macros for papers, reports, thesis, etc.




			      *Description*

    This set designed  for more structured  text.  Contains facilities  to
declare  chapters,  sections,  etc.   This  information  is  then  handled
automatically in the  table of  contents and  in the  running heads  (also
called headings; we call "headline" the text announcing the begining of  a
chapter, section, etc).  Three designs  of pages are  provided.  There  is
also a bunch of utilities for footnotes, bibliography, figures, etc.

1. CHAPTERS, SECTIONS, SUBSECTIONS, ETC.

    All  these  are  used  to  declare  a  chapter,  section,  etc.    The
corresponding routine will generate an appropiate headline, as well as the
running-heads for the pages.

    Numbers are  assigned  automatically:   chapters reset  the  count  of
sections (so, first section in chapter 3 will be 3.1), and of  subsections
(first subsection in section 3.5 will be 3.5.1).  Similarly with  theorems
and  footnotes;  all  these  restart  at  1.

    There are two variations of  sections and chapters, and  sub-sections:
the "appendices".  These  do not  have an  assigned number,  but may  have
sections (num:  1,2,...)  and  subsections (num:   2.1, 2.1,  etc).   Note
\appchapterbegin resets \count8 to be 0 (see below).

    At any given  point, the  global variables  \chapnum, \sectionnum  and
\subsectionnum keep the chapter, section and subsection number.

    A minor disaster will  occur if you  type \chapterbegin{A veeery  long
title...}:  you'll get overfull boxes  in every heading. There are  macros
\chapterbeginb, \sectionbeginb,  etc.   to declare  a  long title  and  an
abreviation, which shall be  used everywhere except  in the headline.   If
this arrangement dissatisfies  you, try  calling \chapterdeclare  instead;
this has 3 parameters, and these need not use the same title.

    There are  two styles  of headlines:  \ctrheadline and  \ddvnheadline;
these are accesed by  \chapterbegin et al. via  the ghost macro  \headline
(see initialization section.

    Current headlines are not very suitable  for long titles; to split  in
several lines,  try  things  like \headline{First  line\cr  second  line}.
Since \chapterbegin uses \headline, you may want to type

\chapterbeginb{First line\cr second line}{Another title}

as an  alternative to  the  abreviation problem.   On  the other  hand,  a
chapter with a very long title could perhaps use some rewritting...

   To enable skip to next odd-numbered page, do:

\def\chapskippage{\endpage\ddvnmsel{\hmode\endpage}{}}

(mind: use \endsheet in the case of multi-column format).

    To  initialize  the  chapter  counter,  set  \setcount8  <n>  positive
integer.  If you don't want chapters (say for a paper), set \count8 to  be
zero (default value):   \setcount8 0. In  this way, \stmt,  \sectionbegin,
\lreqno will OMIT the chapter number (unless you use \chapterbegin).   You
may in that case use sections or subsections to get "paragraphs" 1, 2,  3,
...  Finally,  setting \count8  to  be negative  will use  roman  numerals
(sections will then be i.1, i.2, and so on); cf. \chapnumcase.

    For a better presentation, try style \secsubsecstyle, which
redefines heading handling to have section numbers on even-numbered  pages
and subsection names on odd-numbered pages.  You may still select  between
one of  the  styles  \oddevennumbering,  \bottomnumbering,  or  \topboxes;
select any of these, then \secsubsecstyle.   These format was used by  Art
Samuel for his "Short Waits" (SAIL tech. memo).

    Some further details are discussed in section Page Design.

2. FOOTNOTES, etc.


    Footnotes are  also  numbered  automatically  or  identified  by  some
character:   \nfootnote{note}  and  \footnote*{note},  respectively.    In
general, it  seems  standard  to  type  <...referred-to  text><punctuation
mark>\nfootnote{bla, bla}.  If the footnote  follows a period, there  will
be some space left after it, before the fn. number; if you don't like  it,
try putting  the period  after the  \footnote{...}.  Or,  to leave  little
space, try the control sequence \. instead of the period.

	... and bla bla\.\nfootnote{note}

or, finally, to put foootnote number  on TOP of punctuation mark:

	... and bla bla\spose{,}\nfootnote{note}

    For the \comment macro, you may find it useful to define your own:

		\def\cmax{\comment{\max}}

to  save   some  typing.    Remember  \max   must  be   defined:    either
\def\max{max}, or \def\max{}.  The  comments will be  printed only in  the
first case (and identified by the value of \max).

    For bibliographic references, the format is \ref{7}Schmeller, J.   \it
Carmina Burana\rm  Stuttgart,  1847.\par; this  sets  "[7]  Schmeller...",
nicely indented.  To put a second  indented paragraph, use \refind in  the
same way as done in \enumerind.

3. TABLE OF CONTENTS

    To generate the table of contents, type \tableofcontents at the end of
your MS.  The parameter is the roman number at which numbering will start.

    Table  will  be  constructed  using  titles  given  in  \chapterbegin,
\appchapterbegin, \sectionbegin,  \subsectionbegin, \appsectionbegin,  and
\{chap,sec}listnotes  (title=\Notes).   If you  must add an  entry to  the
table, use \constofc; however, notice you may want to use \appchapterbegin
or \appsectionbegin instead (these besides  set a headline and handle  the
headings).

    The final organization of a MS is as follows:

*\input kermac
*\input papmac
*\input matmac			% (for instance)
*\romannumbering{2} 		% start at page ii (page i = front page)
*\oneside			% optional -- if following 4 (say)   pages
				%   will be printed on one side only

	{First  pages  of   text:   abstract,  preface,   acknowledgements,
	   dedication, etc. ---  not  to  be included  in  t. of  c.   Use
	   \titlepage for EACH of these, to remove headings.

*\arabicnumbering{1}
*\topboxes 			% or any page style (but select one!)

	{The text: chapters, sections, etc.

*\tableofcontents{6}		% do t. of c.; number page vi, vii, etc.
*\end

    Note setting \tableofcontents{-6} will number with arabic numerals.

    To change headline announcing the T. of C., merely redefine \headline;
e.g.,

\def\headline#1{\ctrline{\bf Table of Contents}\vskip 25pt}

4. PAGE STYLES

    In  addition   to   the   page   parameters   described   in   KERMAC:
\romannumbering, \arabicnumbering, \oneside or \bothsides, there are  here
also \titlepage's  and  \normalpage's.  The  former  do not  have  running
heads, but the latter,in  the appropiate style,  will have information  at
the top on the most recent chapter and section declared in the page.

    Now, in addition to style \noheading, already defined in KERMAC,  with
these set you may  choose between \bottomnumbering, \oddevennumbering  and
\topboxes.    The  last two  are meant  (and initialized)  for  \bothsides
(they'll look ugly with \oneside, but no chaos will occur); the two others
work well with either option.

    In all four  styles, \titlepage's do  not have a  heading.  In  styles
\topboxes   and \oddevennumbering, a \titlepage is NOT numbered unless  in
\romannumbering. In the two other styles, all pages are always numbered at
bottom.

    For more details, see section "Page Design".

5. INITIALIZATIONS

    Take a look  at them.   Note the  use of  \inivar to  set the  counter
variables \varfn, etc.; you may  do this at any  point in your MS.   Also,
keep in mind the useful \count8 = 0 described above.

%∞pagebrk
Other sets: TEXMAC, TMRMAC

TEXMAC (To list text files (full ascii-sail set):

.r maxtex
\input kermac
\input papmac
\input texmac

{\texlist
∞∞listfile/file/
∞∞listfile/another file/

  or put definitions here

∞∞endtexlist}

\tableofcontents{2} (optional)


    TABS should  not appear,  but if  they do,  will be  interpreted as  8
blanks

    First character in file must not be a space or TAB.  Char ∞ is used as
escape character,  hence whatever  follows  it will  be interpreted  as  a
control sequence. To  type "∞", insert  ∞∞.  For examples,  see how  macro
files are formatted.

	% Begin non-TEX mode
	% To list a file ∞∞listfile/ <name> /
	% End non-TEX mode; type %∞∞endtexlist
	% Commentaries: %∞∞comm/ anything / in the text
	% To jump to new page, insert  %∞∞pagebrk  in the text
	% Insert Sections and Subsections in the form %∞∞ssec/SOME NAME/

********************************************************************************
TMRMAC: Macros for Times roman fonts.


    These set is the equivalent of TBASIC.TEX[TEX,SYS].  Input it any time
after KERMAC.  It will redefine \tenpoint using T. R. fonts.  There is  no
inverse;  the only (dirty) way to return to CMR fonts is inputting  KERMAC
again.

    Only "ten" point size  is implemented at the  moment.  You may  notice
this set  is loaded  somewhat slowly;  fonts ere  not yet  preloaded  (but
will).

%∞pagebrk
    As another instance, suppose you want a heading consisting of one line
(as in \oddevennumbering style), meant for \oneside, having some \projname
on the left, a centered \todate and the page number to the right; then:

\def\projheading{\onelineheading\oneside\let\nlnhdng=\prjhdng}
\def\prjhdng#1#2{\hdrfnt\projname\hfill\todate\hfill\topnum\count0}

    As  a final  instance,  suppose   you  want  an  overcrowded   heading
consisting of two lines; the  first like in \oddevennumbering, the  second
having Author name on the left, Draft in the center, and \todate on the  right,
ending whith an \hrule. Then
say \date{January 30}, and

\crwdedhdng{Author name}{Draft}

where

\def\crowdedhdng#1#2{\endsheet
	\computevsize{\epagesize}{.625in}
	\gdef\nrmpage{\botmark\vfill\box5}
	\gdef\titpage{\box5\numonlyrmn}
	\gdef\titlemark##1##2{{\rhtypeface
		\mark{\hdrfnt\vbox{\hbox to \hsheetsize{##1\hfill ##2}
				   \vskip 2pt
				   \hbox to size{\qquad #1\hfill #2\hfill\todate\qquad}
				   \vskip 3pt
				   \hrule height .2pt}}}} }



 \crowdedhdng to  set.  Note use of  \ddvnhdng#1#2; this macro  is
the one that selects the  headings in \oddevennumbering, depending on  the
parity  of  page  (cf  also  \ddvnmsel:   this  one  also  checks  whether
\bothsides).

    In some other cases, the modification shall be simpler; for  instance,
if you don't  like the heading  font (small caps)  and/or the ruler  below
them, you need only redefine \hdrfnt and/or \onelinh.  If headings in caps
are desired, here's an easy way to do it:

\let \temp=\titlemark
\def\titlemark#1#2{\temp{\uppercase{#1}}{\uppercase{#2}}}